package com.kws.tool.dto;

import io.swagger.annotations.ApiModelProperty;

import java.util.List;

/**
 * <b>NormalSignFieldConfigRq</b>
 *
 * @description: NormalSignFieldConfigRq <br>
 * @date: 2024/12/3 09:45 <br>
 * @author: lhm <br>
 * @version: 1.0 <br>
 */
public class NormalSignFieldConfigRq {
    @ApiModelProperty(value = "是否自由签章，默认值 false:自由签章 指不限制印章、签署位置、签章样式（单页、骑缝）、和签章个数。")
    private boolean freeMode;

    @ApiModelProperty(value = "是否后台自动落章，默认值 false:签署方为个人时，不支持自动签章。")
    private boolean autoSign;

    @ApiModelProperty(value = "页面是否可移动签章区，默认值 false")
    private boolean movableSignField;

    @ApiModelProperty(value = "指定印章ID（印章ID是e签宝SaaS官网的印章编号")
    private String assignedSealId;

    @ApiModelProperty(value = "手动签章时页面可选的印章列表（印章ID是e签宝SaaS官网的印章编号）")
    private List<String> availableSealIds;

    @ApiModelProperty(value = "页面可选机构印章类型，默认值ALL（多项请使用英文逗号分隔）\n" +
            "ALL - 显示所有类型的印章\n" +
            "PUBLIC - 机构主体公章\n" +
            "CONTRACT - 合同专用章\n" +
            "FINANCE - 财务专用章\n" +
            "PERSONNEL -人事专用章\n" +
            "COMMON -其他类印章（无具体业务类型的章）")
    private String orgSealBizTypes;

    @ApiModelProperty(value = "页面可选个人印章样式，默认值0和1（英文逗号分隔）0 - 手写签名,1 - 姓名印章,2 - 手写签名AI校验")
    private String psnSealStyles;

    @ApiModelProperty(value = "签章区样式")
    private Integer signFieldStyle;

    @ApiModelProperty(value = "签章区位置信息")
    private SignFieldPositionRq signFieldPosition;


    public boolean isFreeMode() {
        return freeMode;
    }

    public void setFreeMode(boolean freeMode) {
        this.freeMode = freeMode;
    }

    public boolean isAutoSign() {
        return autoSign;
    }

    public void setAutoSign(boolean autoSign) {
        this.autoSign = autoSign;
    }

    public boolean isMovableSignField() {
        return movableSignField;
    }

    public void setMovableSignField(boolean movableSignField) {
        this.movableSignField = movableSignField;
    }

    public String getAssignedSealId() {
        return assignedSealId;
    }

    public void setAssignedSealId(String assignedSealId) {
        this.assignedSealId = assignedSealId;
    }

    public String getOrgSealBizTypes() {
        return orgSealBizTypes;
    }

    public void setOrgSealBizTypes(String orgSealBizTypes) {
        this.orgSealBizTypes = orgSealBizTypes;
    }

    public String getPsnSealStyles() {
        return psnSealStyles;
    }

    public void setPsnSealStyles(String psnSealStyles) {
        this.psnSealStyles = psnSealStyles;
    }

    public List<String> getAvailableSealIds() {
        return availableSealIds;
    }

    public void setAvailableSealIds(List<String> availableSealIds) {
        this.availableSealIds = availableSealIds;
    }

    public Integer getSignFieldStyle() {
        return signFieldStyle;
    }

    public void setSignFieldStyle(Integer signFieldStyle) {
        this.signFieldStyle = signFieldStyle;
    }

    public SignFieldPositionRq getSignFieldPosition() {
        return signFieldPosition;
    }

    public void setSignFieldPosition(SignFieldPositionRq signFieldPosition) {
        this.signFieldPosition = signFieldPosition;
    }
}
